import { ref } from "vue";

export const useCopyContent = function () {
  const isCopy = ref(false);
  function copyContent(text: string) {
    copyText(text);
    isCopy.value = true;
    setTimeout(() => {
      isCopy.value = false;
    }, 1000);
  }
  return {
    copyContent,
    isCopy,
  };
};

function copyText(textValue: string) {
  // 动态创建 textarea 标签
  const textarea = document.createElement("textarea");
  // 将该 textarea 设为 readonly 防止 iOS 下自动唤起键盘，同时将 textarea 移出可视区域
  textarea.readOnly = true;
  textarea.style.position = "absolute";
  textarea.style.left = "-9999px";
  // 将要 copy 的值赋给 textarea 标签的 value 属性
  textarea.value = textValue;
  // 将 textarea 插入到 body 中
  document.body.appendChild(textarea);
  // 选中值并复制
  textarea.select();
  document.execCommand("Copy");
  document.body.removeChild(textarea);
}
